<?xml version="1.0"?>
<!--
  ~ Copyright 2004-2012 ICEsoft Technologies Canada Corp.
  ~
  ~ Licensed under the Apache License, Version 2.0 (the "License");
  ~ you may not use this file except in compliance with the
  ~ License. You may obtain a copy of the License at
  ~
  ~ http://www.apache.org/licenses/LICENSE-2.0
  ~
  ~ Unless required by applicable law or agreed to in writing,
  ~ software distributed under the License is distributed on an "AS
  ~ IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either
  ~ express or implied. See the License for the specific language
  ~ governing permissions and limitations under the License.
  -->

<ui:composition xmlns="http://www.w3.org/1999/xhtml"
    xmlns:h="http://java.sun.com/jsf/html"
    xmlns:f="http://java.sun.com/jsf/core"
    xmlns:c="http://java.sun.com/jsp/jstl/core"
    xmlns:ace="http://www.icefaces.org/icefaces/components"
    xmlns:ice="http://www.icesoft.com/icefaces/component"
    xmlns:icecore="http://www.icefaces.org/icefaces/core"
    xmlns:ui="http://java.sun.com/jsf/facelets"
    template="/resources/templates/content-template.xhtml">

    <ui:param name="title" value="#{msgs[maskedEntryBean.title]}"/>
    <ui:param name="description" value="#{msgs[maskedEntryBean.description]}"/>
    <ui:param name="subMenuTitle" value="#{msgs[maskedEntryBean.subMenuTitle]}"/>
    <ui:param name="subMenuLinks" value="#{maskedEntryBean.subMenuLinks}"/>
    <ui:param name="resourceValue" value="#{maskedEntryBean.exampleResource}"/>
    
    <ui:param name="wikiResources" value="#{maskedEntryResources.wikiResources}"/>
    <ui:param name="tldResources" value="#{maskedEntryResources.tldResources}"/>

    <ui:define name="example">
        <h:form id="form">
            <ace:panel id="personalInfoInputPanel" header="Personal Info">
                
                <h:panelGrid id="inputGrid" columns="2" width="100%">
                    <h:outputLabel id="dobLabel" for="dobInput" value="Date of Birth:"/>
                    <ace:maskedEntry id="dobInput" value="#{maskedEntryBean.dob}" mask="99/99/9999">
                        <ace:ajax execute="@this" render="dobOutput"/>
                    </ace:maskedEntry>
                    
                    <h:outputLabel id="workPhoneLabel" for="workPhoneInput" value="Work Phone (with optional extension):"/>
                    <ace:maskedEntry id="workPhoneInput" value="#{maskedEntryBean.workPhone}" mask="(999) 999-9999? x99999">
                        <ace:ajax execute="@this" render="workPhoneOutput"/>
                    </ace:maskedEntry>
                    
                    <h:outputLabel id="mobilePhoneLabel" for="mobilePhoneInput" value="Mobile Phone:"/>
                    <ace:maskedEntry id="mobilePhoneInput" value="#{maskedEntryBean.mobilePhone}" mask="(999) 999-9999">
                        <ace:ajax execute="@this" render="mobilePhoneOutput"/>
                    </ace:maskedEntry>
                    
                    <h:outputLabel id="sinLabel" for="sinInput" value="SIN:"/>
                    <ace:maskedEntry id="sinInput" value="#{maskedEntryBean.sin}" mask="999-999-999">
                        <ace:ajax execute="@this" render="sinOutput"/>
                    </ace:maskedEntry>
                </h:panelGrid>
            </ace:panel>
            
            <ace:panel id="personalInfoOutputPanel" header="Entered data">
                
                <h:panelGrid id="outputGrid" width="100%" style="text-align: left;">
                    <h:outputText id="dobOutput" value="DOB: #{maskedEntryBean.dob}"/>
                    <h:outputText id="workPhoneOutput" value="Work #: #{maskedEntryBean.workPhone}"/>
                    <h:outputText id="mobilePhoneOutput" value="Cell #: #{maskedEntryBean.mobilePhone}"/>
                    <h:outputText id="sinOutput" value="SIN: #{maskedEntryBean.sin}"/>
                </h:panelGrid>
                
            </ace:panel>
            
        </h:form>
        
    </ui:define>
</ui:composition>

